package com.example.pt.service;

import com.example.pt.dto.UserTransferStatsDTO;
import com.example.pt.entity.UserTransferStats;

public interface UserTransferStatsService {
    
    /**
     * 更新用户的上传下载统计
     * @param stats 包含用户ID、种子hash、上传量、下载量的统计对象
     * @return 是否更新成功
     */
    boolean updateUserTransferStats(UserTransferStats stats);
    
    /**
     * 根据用户ID和种子hash获取统计数据
     * @param userId 用户ID
     * @param infoHash 种子hash
     * @return 统计数据
     */
    UserTransferStats getStatsByUserAndInfoHash(Integer userId, String infoHash);
    
    /**
     * 获取用户的总上传量和总下载量
     * @param userId 用户ID
     * @return 用户传输统计DTO
     */
    UserTransferStatsDTO getUserTotalTransferStats(Integer userId);
} 